package com.springBoot.springBootSysCore.modules.services.system;

import com.springBoot.springBootSysCore.common.service.IBaseService;
import com.springBoot.springBootSysCore.modules.entity.system.SysDict;
import com.springBoot.springBootSysCore.modules.entity.system.SysRole;
import com.springBoot.springBootSysCore.modules.vo.TreeNodeVo;

import java.util.List;
import java.util.Map;

/**
 * 角色接口
 * @author timo
 */
public interface SysRoleService  extends IBaseService<SysRole, String> {
	/**
	 * 修改或保存时验证 并保存
	 * @author PSC
	 * @param sysRole
	 * @param resIds
	 * @return
	 */
	public	Map<String, Object> saveEntity(SysRole sysRole, String resIds);
	/**
	 * 删除角色时的验证及删除操作
	 * @author PSC
	 * @return
	 */
	public	Map<String, Object> deleteEntity(List<String> asList);

	Map<String, Object> deleteEntity(SysRole sysRole);

	/**
	 * 获取所有非基础角色树--用户选择时使用
	 * @return
	 */
	public  List<TreeNodeVo>  findAllOfNotDefal(String userId);

    List<SysRole> findAllPublic();
}
